Microprocessor designers have increasingly endeavored to improve performance in various microprocessors by increasing clock speeds and adding parallelism. Large blocks of random access memory (RAM) are included within the microprocessor for data storage and for program storage in order to reduce memory access times. When a microprocessor is first started after applying power or after being reset for various reasons, the microprocessor must be initialized and "boot loaded" with a program which can be executed. Typically, a microprocessor begins operation by executing a "bootstrap" program which is contained in a read only memory (ROM) or programmable read only memory (PROM) located within the microprocessor. The bootstrap program may provide initial operating parameters to the microprocessor and transfer a more sophisticated boot load program from an external source to the internal memory, or the bootstrap program may transfer an operating system program or an application program from an external source to the internal memory. Once a program is loaded in internal memory, then the microprocessor can execute this program.
Typically, the bootstrap ROM or PROM is used only when the microprocessor is initialized and booted. Unfortunately, the ROM/PROM takes a relatively large amount of space on the semiconductor substrate of the microprocessor.
An object of the present invention is to overcome the problem of allocating space on a microprocessor for ROM/PROM which is used only during a boot operation.